assert(bl2_to_next_bl_params->head);
assert(bl2_to_next_bl_params->h.type == PARAM_BL_PARAMS);
assert(bl2_to_next_bl_params->h.version >= VERSION_2);
+ assert(bl2_to_next_bl_params->head->ep_info);
+
+ /* Populate arg0 for the next BL image */
+ bl2_to_next_bl_params->head->ep_info->args.arg0 = (u_register_t)bl2_to_next_bl_params;
/* Flush the parameters to be passed to next image */
plat_flush_next_bl_params();
******************************************************************************/
void flush_bl_params_desc(void)
{
- flush_dcache_range((unsigned long)bl_mem_params_desc_ptr,
+ flush_dcache_range((uintptr_t)bl_mem_params_desc_ptr,
sizeof(*bl_mem_params_desc_ptr) * bl_mem_params_desc_num);
+
+ flush_dcache_range((uintptr_t)&next_bl_params,
+ sizeof(next_bl_params));
}
/*******************************************************************************
/* Invalid image is expected to terminate the loop */
assert(img_id == INVALID_IMAGE_ID);
- /* Populate arg0 for the next BL image */
- next_bl_params.head->ep_info->args.arg0 = (unsigned long)&next_bl_params;
-
- /* Flush the parameters to be passed to the next BL image */
- flush_dcache_range((unsigned long)&next_bl_params,
- sizeof(next_bl_params));
-
return &next_bl_params;
}